package com.zhixiang.xaec.action.safebase.saferesponsibility;


import java.util.List;

import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import com.google.gson.Gson;
import com.zhixiang.core.command.QueryFilter;
import com.zhixiang.core.entity.TreeObj;
import com.zhixiang.core.util.String2Array;
import com.zhixiang.core.util.YearGridCrud;
import com.zhixiang.core.web.action.BaseAction;
import com.zhixiang.xaec.entity.safebase.saferesponsibility.SafetyResponsibilityBook;
import com.zhixiang.xaec.service.safebase.saferesponsibility.SafetyResponsibilityBookService;


/**
 * @author gao
 * @since 2016年12月22日
 */
@Controller
@Scope("prototype")
public class SafetyResponsibilityBookAction extends BaseAction
{

    private static final long serialVersionUID = -8780482792768725990L;

    private SafetyResponsibilityBook safetyResponsibilityBook;

    @Autowired
    private SafetyResponsibilityBookService safetyResponsibilityBookservice;

    /**
     * @return Returns the safetyResponsibilityBook.
     */
    public SafetyResponsibilityBook getSafetyResponsibilityBook()
    {
        return safetyResponsibilityBook;
    }

    /**
     * @param safetyResponsibilityBook
     *            The safetyResponsibilityBook to set.
     */
    public void setSafetyResponsibilityBook(SafetyResponsibilityBook safetyResponsibilityBook)
    {
        this.safetyResponsibilityBook = safetyResponsibilityBook;
    }

    public String list()
    {
        QueryFilter localQueryFilter = new QueryFilter(getRequest());
        List<SafetyResponsibilityBook> list = safetyResponsibilityBookservice.getAll(localQueryFilter);
        setTotalCounts(localQueryFilter.getPagingBean().getTotalItems());
        setResult(list);
        return SUCCESS;
    }

    public String get()
    {
        String id = getRequest().getParameter("id");
        if (StringUtils.isNotEmpty(id))
        {
            setResult(safetyResponsibilityBookservice.get(Long.valueOf(id)));
        }
        return SUCCESS;
    }

    public String delete()
    {
        try
        {
            String ids[] = getRequest().getParameterValues("ids");
            Long[] longIds = String2Array.stringArrayToLongArray(ids);
            safetyResponsibilityBookservice.remove(longIds);
        }
        catch (Exception e)
        {
            setMsg("删除失败");
            setSuccess(false);
        }
        return SUCCESS;
    }

    public String save()
    {
        try
        {
            safetyResponsibilityBookservice.save(safetyResponsibilityBook);
        }
        catch (Exception e)
        {
            setMsg("保存失败");
            setSuccess(false);
        }

        return SUCCESS;
    }

    // 实现年份数的方法
    public String treeLoad()
    {
        List<TreeObj> treeList = YearGridCrud.treeLoad();
        if (treeList != null)
        {
            outJsonString(new Gson().toJson(treeList));
        }
        return SUCCESS;
    }

}
